import 'package:mobile_app.core/core/domain/entities/settings/appearance_settings.dart';
import 'package:mobile_app.core/core/domain/entities/settings/appearance_settings_data.dart';

abstract class CreateAppearanceSettingsDataFromAppearanceSettings {
  AppearanceSettingsData call({
    required AppearanceSettings appearanceSettings,
  });
}

class CreateAppearanceSettingsDataFromAppearanceSettingsImpl
    implements CreateAppearanceSettingsDataFromAppearanceSettings {
  const CreateAppearanceSettingsDataFromAppearanceSettingsImpl();

  @override
  AppearanceSettingsData call({
    required AppearanceSettings appearanceSettings,
  }) {
    final appearanceSettingsData = AppearanceSettingsData(
      themeMode: appearanceSettings.themeMode,
      lightThemePrimaryColor: appearanceSettings.lightThemeSelectedPrimaryColor,
      darkThemePrimaryColor: appearanceSettings.darkThemeSelectedPrimaryColor,
    );

    return appearanceSettingsData;
  }
}
